System and method for the analysis of semiconductor test data

ABSTRACT

According to one embodiment, a method of analyzing semiconductor test data includes receiving a plurality of raw data entries from a testing system. Each raw data entry is associated with a test structure of a semiconductor device, and each raw data entry is uniquely identified by a name including a plurality of parseable fields. The plurality of data entries is parsed using a selected one of the plurality of parseable fields to identify a grouping of raw data entries. At least one reportable parameter indicative of the functionality of the test structures associated with the grouping of raw data entries is calculated, and the at least one reportable parameter is provided to a user.

FIELD OF INVENTION

The present invention relates generally to the testing of semiconductor devices and more particularly to a system and method for the analysis of semiconductor test data.

BACKGROUND OF THE INVENTION

During the developmental phase of new semiconductor technology, test wafers are designed to conduct electrical tests to characterize device performance and collect yield information associated with defective failure mechanisms. Each test wafer may include an array of die, and each die may include one or more integrated circuits that may be designated as test structures. To determine the yield and defect density associated with the test structures in the new technology, various tests may be performed on the test structures. During the tests, information may be read from, written to, or otherwise gathered from each test structure. The testing usually generates large amounts of data. The large amounts of data may include data for yield-related test structures and may include, for example, data relating to approximately 2000 parameters about each yield-related test structure. The test data is then manually analyzed to determine the yield, or percentage of properly functioning test structures in the lot of wafers. As a corollary, the test data is manually analyzed to determine the defects occurring the most frequently. Because the test data is analyzed manually, the analysis associated with the numerous parameters tested on a test wafer is time consuming, and in some instances may exceed a week. Accordingly, the analysis of test structures slows the development of new technologies and impedes the ability of the developmental staff to make new discoveries and improvements.

SUMMARY OF THE INVENTION

In accordance with the present invention, a system and method for forming semiconductor devices on the surface of the wafer is provided that substantially eliminates or greatly reduces disadvantages and problems associated with conventional semiconductor testing equipment.

According to one embodiment of the present invention, a method of analyzing semiconductor test data includes receiving a plurality of raw data entries from a testing system. Each raw data entry is associated with a test structure of a semiconductor device, and each raw data entry is uniquely identified by a name including a plurality of parseable fields. The plurality of data entries is parsed using a selected one of the plurality of parseable fields to identify a grouping of raw data entries. At least one reportable parameter indicative of the functionality of the test structures associated with the grouping of raw data entries is calculated, and the at least one reportable parameter is provided to a user.

Certain examples of the invention may provide one or more technical advantages. A technical advantage of one exemplary embodiment of the present invention is that a database management and analysis system is provided that allows for the automated analysis of raw data acquired from test structures. In particular, yield loss and defect density calculations and trends may be determined from vast amounts of raw data. Another technical advantage may be that modeling may be used to determine the yield loss of any products designed using the same semiconductor fabrication processes before the fabrication of the products. In particular embodiments, the only information needed to perform the modeling is the layout. As a result, the efficacy of a new semiconductor technology may be tested on a layer-by-layer basis, and the results may be applied to systems such as the real products to be fabricated that include the integrated layers. Still another technical advantage may be that a naming convention may be used to assign each stored entry of raw test data with a unique name. In particular embodiments, the unique name assigned to a data entry may include one or more parseable fields of identifying information. Accordingly, the raw test data may be stored in a manner that may be easily manipulated.

Other technical advantages may be readily apparent to one skilled in the art from the figures, descriptions and claims included herein. None, some, or all of the examples may provide technical advantages.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present invention and its features and advantages, reference is now made to the following description, taken in conjunction with the accompanying drawings, in which like reference numerals refer to like elements, and wherein:

FIG. 1 is a block diagram of a system for the analysis of semiconductor test data;

FIGS. 2A and 2B are example screen shots for displaying analyzed test data to a user; and

FIG. 3 is a flowchart of a method for the analysis of semiconductor test data.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 is a block diagram of a system 10 for the analysis of semiconductor test data 12. Test data 12 may be gathered from test structures on a wafer. In various embodiments, a wafer may include a thin polished slice of crystal material sliced from a crystal cylinder grown for the purpose of semiconductor fabrication. According to one typical fabrication technology, a wafer may be eight inches in diameter and provide the foundation on which a semiconductor device may be created. The starting material of the wafer may comprise silicon, gallium arsenide, or other suitable substrate material. The semiconductor device may be created on the surface of the wafer using a variety of techniques and procedures, such as layering, photolithographic patterning, doping through implantation of ionic impurities, and heating. During the developmental phase of a new semiconductor technology, a lot of wafers may be designated as a lot of test wafers, and the semiconductor devices supported on the test wafers may be designated as test structures. In particular embodiments, the test structures may include an array of transistors, a string of contacts, a string of vias, or other semiconductor devices.

Typically, the test structures have been fabricated using new semiconductor fabrication processes. Accordingly, test data may be generated to determine the yield, defect density, and other functionality measurements associated with the test structures in the new technology. Test data 12, however, may include test results relating many test structures on a wafer. In particular embodiments, test data 12 typically includes 2000 parameters or more for one set of test structures on a wafer. Accordingly, where the testing yields test data 12 for as many as 12 wafers per lot and between 30 through 60 sets of test structures per wafer with 200-500 test modules within each set, test data 12 obtained during the developmental process includes vast amounts of information that is meaningless without analysis directed at each parameter tested. As will be described in more detail below, system 10 includes a database management system (DMS) 14 that operates to receive and analyze test data 12 for the purposes of determining the yield, defect density, and/or other parameters indicating the functionality of the new technology within a defined set of limits. In particular embodiments, DMS 14 may be able to identify reoccurring problems resulting from circuit leakages, shorts, gate oxide integrity, early break-down of diode, early break-down of transistor source to drain, junction punch-through, and other electrical failures or defects in the test structures.

Test data 12 is obtained from a wafer tester with a test routine that implements a test plan specified for yield and device engineering purposes. The wafer tester may include or communicate with a test plan manager 16 or other controller or driver. In various embodiments, test plan manager 16 receives a test plan from a test plan database 18. The test plan identifies the parameters to be tested for a test wafer. As discussed above, the test plan may identify between 600 and 2000 parameters (and in some instances, more) to be tested on each test structure on a test wafer. Some example parameters that may be tested include resistance of snake made of conductive layer (metal, poly, junction isolated layers), leakage between conductive snake to conductive comb, contact or via chain resistance, leakage of contact or via chain to surrounding topography, capacitance of capacitive components, capacitance of inter-metal layers, leakage between capacitor plates or inter-level metals, and transistor array parameters such as Vt, GOI, IDLIN, BNDSS.

In particular embodiments, the test plan may identify a naming convention to be applied to the raw data in a standardized manner. The standardized naming convention allows the raw data to be organized in a manner that is easily parseable. Accordingly, valuable information within the raw data may be more efficiently identified, analyzed, and presented. The efficiency associated with the standardized naming convention is realized by code-driven parsing and the implementation of recognized routines by the data management and analysis system. Without the standardized naming convention, these functions can only be implemented using many lookup tables, which require individualized set for each test plan. Test plan manager 16 may apply the naming convention to each data entry of raw data such that a unique name that includes a string of characters is assigned to each data entry. Whether considered as a whole or in part, the string of characters assigned to a specific data entry may provide information about that data entry to DMS 14 and users of DMS 14.

The characters comprising each unique string of characters may include any appropriate combination of letters, numbers, and/or symbols. As just one example, the naming convention may result in the assignment of a string of 15 characters to each data entry. The string of characters may be in a format similar to:

-   -   MC_MMMMMMM_TT(TT)_DT         where characters enclosed in parentheses are optional. Within         the string of characters, a character or grouping of characters         may represent distinct information associated with the data         entry. In particular embodiments, the more important         information, which is more likely to be using as a sorting         identifier, may be placed at or near the beginning of the string         of characters. Conversely, the less important information, which         is less likely to be used a sorting identifier, may be placed at         or near the end of the string of characters.

In the described example, the characters represented by “MC” may indicate the module category, or type of test structure, associated with the particular data entry. Thus, the first two characters in the name assigned to the data entry may identify whether the whether the test structure includes a snake and comb (SC), transistor array (TA), diode array (DA), capacitor (CA), contact chain (CC), resistor array (RA), or other semiconductor device. The characters corresponding with the module category may be placed at the front of the string of characters since it is this information that is most valuable as a sorting identifier.

One or more of the characters in the string may include a descriptive name for the test structure. In the illustrated example above, the characters indicated as “MMMMMMM” represents a descriptive name of the test modules. Althoughf seven characters are specifically illustrated, it is anticipated that the descriptive name may include any appropriate number of letters, numbers, and/or symbols. The descriptive name provides identifying information about the test structure that may be useful to DMS 14 or the user of DMS 14. For example, if the descriptive name includes “SC_MTL1_MN” and MTL1_MN is the module name, the descriptive name may indicate to DMS 14 or a user of DMS 14 that the data entry includes information pertaining to a metal-1 snake and comb test structure with minimum design rule. As another example, if the descriptive name includes “TA_(—)5VPMOSS” and 5VPMOSS is the module name, it may indicate to the DMS 14 or a user of DMS 14 that the data entry includes information pertaining to a standard 5V pmos-type transistor array.

Additional characters in the string may identify the test performed. Specifically, the characters represented above by “TT(TT)” may generically identify by name the physical test performed on the test structure. For example, the characters “RSSK” may identify a physical test of sheet resistance of a snake. As another example, the characters “LKCM” may identify a physical test of the leakage of snake to comb. As further examples, “LKWL” and “RVIA” may identify physical tests of leakage to well and via resistance, respectively.

Finally, one or more characters in the string may be used to identify the identification number of the test structure, which often is associated with the test structure size. Accordingly, the characters represented above as “DT” may identify whether the test structure is small, medium, or large. For example, in particular embodiments, D1 may identify the device as small in size, D2 may identify the device as medium in size, and D3 may identify the device as large in size. The size of the test structure may be measured as a function of the number of semiconductor devices in the test area. Thus, a test structure identified as a D1 test structure may include 100 transistors. Conversely, a test structure identified as a D2 or D3 test structure may include 400 or 1600 transistors, respectively. In other embodiments, the size of the test structure may be a function of the area associated with the test structure on the test wafer. For example, a test structure may be considered small, medium, or large, if the area associated with the test structure is approximately 0.1, 0.4, or 1.6 mm², respectively. Where the size of the test structure is a function of area, the characters identifying the size of the test structure may identify the appropriate area file stored in area file database 24 that is associated to the test structure.

Accordingly, and as described will be described in more detail below, the string of characters assigned to each data entry may be organized in a specific format that provides information about the data entry. Thus, the data entries can be navigated and manipulated in meaningful ways. For example, in the illustrated example embodiment where the naming convention includes four different groupings of characters, the naming convention provides four fields by which the data entries may be sorted. Accordingly, in the illustrated example, the data entries may be sorted by the type of test structures, descriptive names, the types of tests applied, or the size of the test structures. The groupings of characters enable the data entries to be parsed, sorted, grouped, summarized, and managed in an automated manner by DMS 14 such that fabrication trends and other useful manufacturing and design information can be assessed. Although a particular format is described above, it is recognized, however, that any naming convention may be used, and the characters may be grouped as desired.

The results of the testing by the wafer tester may include test data 12, which may be received and stored as raw data in raw data database 20. Because the raw data is stored as it is received from test plan manger 16, raw data database 20 may be stored with the naming convention dictated by test plan 18. DMS 14 has access to raw data database 20 to extract raw data from database 20. DMS 14 may operate to manipulate and manage the raw data to identify performance trends, defect densities, yield calculations, and other information useful to the assessment of the functionality of the new technology. Accordingly, DMS 14 may include a processor or other computing device that includes appropriate database management software tools and circuitry. In particular embodiments, the functionality described below as pertaining to the various components of DMS 14 may be built into a commercially available software application such as DataPower 6.0 offered by PDF Solutions, Inc. Alternatively, the functionality may be built into other commercially available database management tools such as Excel, Oracle, Java, SAS, RS1, or Jump.

For the organization, restructuring, and analysis of the raw data stored in raw database 20, DMS 14 includes a query engine 22 that operates to obtain the necessary inputs for analyzing the raw data. In an exemplary embodiment, query engine 22 may include a computing device or other processor. To obtain raw data to be analyzed by DMS 14, query engine 22 may communicate with raw data database 20. Specifically, query engine 22 may extract raw data from raw data database 20. The raw data may comprise one type of input to be considered by DMS 14 during the analysis of test data 12.

Another type of input that may be sought by query engine 22 may include area files. For analyzing the raw data, query engine 22 may obtain one or more area files from area file database 24. An area file may identify the physical sizes for some or all of the tested parameters, which, as will be described in more detail below, may be used to perform various calculations, such as a defect density (DD), for a particular failure mode occurring repeatedly in a set of test structures. In particular embodiments, one test parameter may correspond to several sizes depending on the purpose of the DD calculation or failure mechanism. For example, the DD for a transistor array is often calculated based on the raw-silicon area of the entire array. In the case of Gate-Oxide Integrity (GOI) failure, however, the DD is more appropriately calculated with gate oxide area for the entire array. As another example, if the GOI failure is suspected to be related to the transistor perimeter, the total gate perimeter length is the better size to use to calculate the DD. As still another example, the DD may also be calculated with the normalization factor from Critical Area (see below).

In particular embodiments, area files database 24 may include a set of global areas, which defines for the test program the default sizes for D1, D2, and D3. Thus, in particular embodiments, the global area for the test program may be 0.1, 0.4, or 1.6 mm² depending on whether the test structure is small, medium, or large, respectively. The described areas, however, are merely provided as examples. The global area depends on the floor planning of the specific test structure and may vary as is appropriate to a specific test chip. This global area applies to all the parameters with no area assigned for particular parameters in the area files, with the device-under-test number D1, D2, and D3 in the parameter name as described above with regard to the standardized naming convention. This provides convenience for area setting for the base-line area modules, and gives an estimate DD even before any area files are available.

Because area files database 24 may include multiple area files for each test parameter, a test plan identifying approximately 2000 test parameters to be tested may result in multiple area files being stored in area files database 24. In particular embodiments, the global area file is stored on a per test program basis. As described above, the global area files assign a default pre-assigned area to test structures identified with a naming convention that includes an indicator of the size of the test structure. In particular embodiments, a naming convention that is similar to the naming convention used for the raw data files in raw database 20 may be applied to the area files in are files database 24. For example, MC_MMMMMMM_TT(TT) may be used to store the critical area files.

A second type of area files may identify a critical area particular to the test structure and the test performed. The critical area is related to how vulnerable the test structure is to defects. From the vulnerability of the test structure, a normalization factor may be determined. The critical area is a mathematical-product of the actual layout area and the normalization factor, Theta: Critical Area=Layout Area*θ  [1] The critical area may be used to calculate the yield impact of most common types of defects to a device as long as the layout data of the devices is available. The normalization factor, Θ, can be modeled with numerical simulation in the most common cases, if the failure mechanism is well defined.

Still another type of input that may be obtained by query engine 22 may include one or more types of limits files. Accordingly, query engine 22 may also communicate with one or more limits databases 26. In operation, prior to analyzing the raw test data, query engine 22 may extract one or more limits files to be applied to the raw test data. How the limits file is applied to the raw test data may depend on the type of the limits file. For example, in particular embodiments, limits database 26 may include a Sanity Check limits file for each test parameter tested. The Sanity Check limits file may include a defined set of boundaries that may be used as a check of the testing system. The set of boundaries may include an upper and a lower limit. If a particular test parameter is determined to be outside the upper and lower limits, it may be determined that the testing system itself, such as the tester, has malfunctioned. As a results, it may be determined that the test results should be disregarded rather than analyzed.

Limits database 26 may also include one or more limits files to be used in a yield calculation for the test structure. For example, a process control document (PCD) limits file may include a set of boundaries that are determined from the specification for the test structure. Thus, the PCD limits may represent a set of boundaries in which a properly functioning test structure should theoretically operate. As will be described in more detail below, the PCD limits may be used to calculate a theoretical yield for the test structure. The theoretical yield may identify a percentage of the test structures that are operating within the specification designated limits.

Another type of limits files that may be used by DMS 14 to perform yield calculations may include self consistent (SC) limits files. Accordingly, a SC limits file may be stored in limits database 26 for each identified test parameter. In particular embodiments, the SC limits files may be related to the actual distribution of the data. The SC limits files may be obtained by taking a large set of data and setting a set of limits based on the actual distribution of the data. The SC limits files may be useful where a test structure, because of its large size, does not replicate the parameters suggested by the specification in the PCD. As will be described in more detail below, the SC limits may be used to calculate yield and identify yield problems if their are outliers from the main distribution. The SC limits are also one important source of data in setting the Final Yield limits.

As additional raw data is considered by DMS 14, a SC limits file may be refined to represent a more accurate set of limit boundaries for a given test structure. As will be described in more detail below with regard to FIG. 3, the analysis of raw data may be an iterative process as the SC limits are repeatedly refined. The yield calculation associated with a given parameter may be recalculated as the SC limits are refined.

Another type of limits file that may be used by DMS 14 to perform yield calculations may include Final-Yield limits. Accordingly, a Final-Yield limits file may be stored in limits database 26 for each identified test parameter. Each Final-Yield limits file is the result of reconciliation of PCD limits, SC limits, tester system test limitations, and physical modeling of failure on parameter values. The Final-Yield limits file is the ultimate set of limits to calculate yield. As described with regard to FIG. 3, the Final-Yield limits can be refined with iterative processing by experimenting with the produced yield number within a particular data set.

For performing various calculations, DMS 14 includes a calculation engine 28 that operates to obtain the necessary inputs for calculating yield and DD. In an exemplary embodiment, calculation engine 28 may include a computing device or other processor with the appropriate software and functionality for analyzing the raw data. In analyzing the raw data, calculation engine 28 may operate to calculate reportable parameters from the raw data. In particular embodiments, the top layer of information may include a pareto determination of failure modes. The pareto may include the most frequently occurring failure modes as ranked by frequency of occurrence. For example, the pareto may include the top ten failures modes exhibited by the test structures represented in the raw data.

As another example, calculation engine 28 may also operate to calculate one or more yield impacts and/or yield losses for a test structure. For example, the following formula may be used to calculate a yield impact (Y): Y=Ys*EXP(−Critical Area*Defect Density)   [2] where Ys is the systematic yield. The critical area is described above and the defect density is described below. A yield loss calculation identifies the percentage of failed test structures relative to all similar test structures. For example, the following formulas may be used to calculate a systematic yield loss and a yield loss: Systematic Yield Loss=1−Ys   [3] Yield Loss=1−Y   [4] The yield loss calculation may be calculated for each test parameter. Additionally, modeling may be used to extrapolate a yield loss value for a much larger device from the yield calculations for three different sizes of test structures. For example, the yield loss calculations for transistor arrays having 100 transistors, 800 transistors, and 1600 transistors respectively can be used to estimate a yield loss value for a transistor array having 10000 transistors, given there are enough number of structures are tested and yield data is obtained with enough confidence based on statistical theory.

As still another example, calculation engine 28 may operate to calculate a defect density for a test structure by using a fitting algorithm with formula [2] to the yield of 3 test structures with different area. As a result, the Ys and Defect-Density are obtained. Defect density may include the number of defects occurring per square centimeter of silicon for a particular type of failure mode. Similar to yield loss modeling, calculation engine 28 may perform defect density modeling to predict the defect density of larger devices. For example, using the defect density calculations for transistor arrays having 100, 400, and 1600 transistors each, calculation engine 28 may calculate an estimated defect density for a transistor array having 10000 transistors.

Once the test data is analyzed to determine the yield, defect density, and other reportable parameters for a grouping of test structures or test wafers, the organized and analyzed test data may be stored in an analyzed data database 30. The value of the analyzed data may not be appreciated, however, until it is received by a user, who can react to the analyzed data to determine whether the tested new technology is producing an adequate number of properly functioning test structures. Accordingly, in various embodiments, DMS 14 includes a screen manager 32 and a report manager 34, which may collectively or alternatively operate to report the analyzed data to a user.

Specifically, screen manager 32 may communicate the analyzed data to a graphical user interface (GUI) 36 associated with DMS 14 or another computing system. The analyzed data may be displayed to the user in the form of screen shots. The screen shots displayed on GUI 36 may include information organized in a tabular or graphical form. Examples of such tabular or graphical presentations are illustrated in FIGS. 2A and 2B. Specifically, screen shot 100 includes calculations for yield loss percentages, system yield loss percentages, defect density, and goodness of fit for each parameter tested, according to multiple sets of limits. Thus, screen shot 100 includes a high-level view of the data obtained by DMS 14.

Screen shot 100 also includes a drop-down menu 102 that allows a user of GUI 36 to view different lower-level views of information related to a particular parameter under a particular limit. Specifically, drop-down menu 102 provides the user with the ability to view various tables, figures, and charts. Table 104, for example, comprises a Pareto listing of the ten most frequent defects contributing to the defect density associated with a test parameter. Chart 106, on the other hand, provides the user with a trend chart of the yield loss by wafer at a particular limit. From chart 106, a user can select to view wafer maps 108 illustrating which die on the wafer are failing at that particular limit. Another example of information that may be selected from drop down menu 102 includes chart 110, which includes a view of the yield loss trends exhibited by the lot of wafers. From 110, the user may select to view chart 112, which provides the cumulative probabilities for yield loss by lot (drop “by lot”).

Returning to FIG. 1, whereas screen manager 32 displays the analyzed data on GUI 36, report manager 34 may operate to generate a hard copy of the analyzed data, or publish a web-publication with a set of reports hyper-linked with web-publication language and format. For example, report manager 34 may include a printer that generates a hard copy of reports 38. Reports 38 may be similar to those discussed above with regard to FIGS. 2A and 2B. Thus, reports 38 may include tabular or graphical representations of the analyzed data. Because reports 38 are generated as hard copies, reports 38 may be distributed or circulated as appropriate for user analysis of the test results.

Reports 38 and screen shots 100 through 112 provided to the user may be periodically updated. Thus, as new raw data is received by query engine 22, screen shots 100 through 112 and reports 38 generated by screen manager 32 and report manager 34, respectively, may be updated. For example, when new test structures are tested and new raw data is obtained and stored in raw data database 20, DMS 14 may extract the new raw data and add the new raw data to analyzed data 30. The new raw data may be integrated with the old raw data to generate updated screen shots 100 through 112 and reports 38. Screen manager 32 and/or report manager 34 may then provide the user with updated screen shots 100 through 112 and reports 38, respectively.

For the management of test data, DMS 14 also includes a parser 42. In an exemplary embodiment, parser 42 may include a computing device or other processor with the appropriate software and functionality for managing the raw data. In managing the raw data, parser 42 may operate sort through the raw data to identify reportable parameters organized in layers of information. Additionally or alternatively, parser 42 may perform navigation functions, selection functions, grouping functions, or any appropriate combination of these functions. Parser 42 may also operate to set the scope of the presentation of data displayed by screen manager 32 or reported by report manager 34. Parser 42 interacts with query engine 22, calculation engine 28, report manager 34, and screen manager 32 to utilize the standardized naming convention to perform any of the above described functions.

Although an exemplary configuration of system 10 is described, it is recognized that system 10 may include any appropriate number of components and databases. For example, although DMS 14 is illustrated as including a query engine 22, a calculation engine 28, and a parser 42, it is contemplated that DMS 14 may include a single processor for performing the functions described above. Additionally, although system 10 is described as including a variety of databases for storing input files, raw data, and analyzed data, it is generally recognized that the data and files described above may be stored in any appropriate storage system and need not be stored separately. Accordingly, many modifications may be made to system 10 without departing from the spirit and scope of the present invention

FIG. 3 is a flowchart of a method for the analysis of semiconductor test data. At step 202 a test plan is defined. The test plan may identify the parameters to be tested for a test wafer and corresponding testing method and conditions. The test plan also specifies the parameter names according to the standardized naming convention, which may be some variation of that described above. In particular embodiments, the naming convention allows the raw data to be organized in a manner that is easily parseable. Accordingly, valuable information within the raw data may be more efficiently identified and analyzed.

At step 204, the wafer tester runs the test program that implements the test plan. As each test is performed on a test structure and test results are obtained, a raw data entry may be created. The raw data entry may be named according to the standardized naming convention provided in the test plan. In particular embodiments, the name assigned to each raw data entry may include a string of characters that includes any appropriate combination of letters, numbers, and/or symbols. For example, the name assigned may have groupings of characters that have the format MC_MMMMMMM_TT(TT)_DT. Each grouping of characters may provide useful and parseable information about the raw data entry. The raw test data is stored in a raw test data database 20 at step 206. Each data entry of raw data may be identified by the name assigned to that data entry at step 204.

At step 208, one or more limits format files and area files are stored. Specifically, the limits formats files may be loaded into a limits database 26, and the area files may be loaded into an area files database 24. In particular embodiments, the limits format files are considered preliminary limits files, as the limits files may be refined in steps described below as the raw data in raw database 20 is analyzed. As described above, the user or operator of DMS 14 must set the preliminary limits by which the raw data can be assessed. These may be stored in limits database 26. As more information is obtained and trends are established, however, the limits files stored in limits database 26 may be refined. Accordingly, the upper and lower boundaries of acceptable performance may be determined through the analysis of and comparison of multiple test structures.

At step 210, queries may be applied by parser 28 to form the data set. Specifically, parser 28 may receive a query plan identifying the queries to be performed by parser 28. The query plan may identify certain reportable parameters to be calculated by parser 28 from the raw data. For example, a pareto determination of failure modes may be summarized. As another example, yield loss percentages and defect density percentages may be calculated for a test structure. Additionally, modeling may be used to extrapolate yield loss percentages and defect density percentages for larger-scaled devices.

At step 212, limits may be applied to the raw data set for yield calculation. In doing so, bad test data may be filtered out of the raw data. For example, a sanity check may be performed by checking a test parameter included in a raw data entry against a sanity check limits file. The sanity check limits file may include a defined set of upper and lower boundaries that may be used a check of the testing system. If a particular test parameter is determined to be outside the upper and lower limits, it may be determined that the testing system itself has malfunctioned. For example, it may be determined that the tester is not properly aligning with the contact points of the test wafer. Where the test parameter fails the sanity check, the raw data entry may be deemed to be bad, and the test results may be disregarded rather than analyzed. The filtering of the data results in summary results, which are obtained at step 214.

At step 216, the summary results are navigated, drilled down, grouped, sorted, and parsed to scope the raw data down to a subset of data. The subset of data may then be analyzed and the limits modified at step 218. In particular embodiments, the analysis of the subset of data may include the calculation of yield losses, system yield losses, defect density percentages, and other test parameter calculations indicative of the functionality of the new semiconductor technology under testing. Modeling may be used to estimate yield losses, system yield losses, defect density percentages, and other test parameter calculations for larger-scaled test structures. The analysis may include the generation of various reports, charts, maps, and graphs of reportable data. Where defects are identified, a pareto listing of the most frequently occurring defects may be identified.

In particular embodiments, the modification of the limits may include the refining of the SC limits files to represent a more accurate set of limit boundaries for a given test structure. A determination may be made at step 220 to determine whether or not a self consistent set of limits has been obtained. Self consistent limits may include data that does not conflict with other data in the subset. Where the data in the subset does include conflicting data, the method returns to step 216, where the subset of data is further scoped down. The method may cycle in this manner through steps 110 to 120, until it is determined at step 120 that the analysis has performed enough iterations to render useful and complete results. The method may cycle in this manner until a self consistent set of limits is obtained and the method continues to step 222, at which time permanent limit files may be output. As a result, limit files database 26 may be updated at step 224.

At step 226, a determination may be made to determine whether or not to apply more queries. Thus, in particular embodiments, the application of the queries to the raw test data may be an iterative process. The refinement of limits at step 218 may make it desirable to return to a previous step to apply the refined limits to the raw test data to analyze the raw data. Accordingly, where more queries are to be applied, the method returns to step 210. The method may then cycle through steps 210-226 until no further queries are to be applied.

At step 228, the final results are output. In particular embodiments, the final results may be displayed to a user on GUI 36 or other display system. Additionally or alternatively, a hard copy of results 38 may be generated and provided to the user and/or the results may be made available as a web publication. The final results may include high-level views and low-level views of the different layers of calculations. Tabular or graphical representations, such as charts, tables, graphs, and other figures, of the analyzed data may be presented to the user. The charts, tables, graphs, and other figures may summarize yield loss percentages, system yield loss percentages, defect density, goodness of fit, and other functionality measuring calculations for each parameter tested. Finally, trend charts may be provided for user analysis of the test results.

Thus, the system and method described may provide certain technical advantages. For example, the system and method may allow for the automated analysis of raw data acquired from test structures. Because a systematically applied naming convention is used to assign each stored entry of raw test data with a unique and parseable name, the raw data may be easily manipulated and organized. In particular, yield loss percentages, defect density calculations, and other yield related trends may be determined from vast amounts of raw data. Additionally, the system and method may use modeling to estimate yield loss and defect density percentages for large scale test structures. As a result, the efficacy of a new semiconductor technology may be tested on a per-layer basis, and the results may be applied to integrated systems comprised of multiple layers or the whole flow, such as in the case of a real product.

Modifications, additions, or omissions may be made to the method without departing from the scope of the invention. The method may include more, fewer, or other steps. Additionally, steps may be performed in any suitable order without departing from the scope of the invention. Furthermore, although the present invention has been described in detail, it should be understood that various changes, alterations, substitutions, and modifications can be made to the teachings disclosed herein without departing from the spirit and scope of the present invention which is solely defined by the appended claims. 

1. A method of analyzing semiconductor test data, comprising: receiving a plurality of raw data entries from a testing system, each raw data entry associated with a test structure of a semiconductor device, each raw data entry uniquely identified by a name including a plurality of parseable fields; parsing the plurality of data entries using a selected one of the plurality of parseable fields to identify a grouping of raw data entries; calculating at least one reportable parameter indicative of the functionality of the test structures associated with the grouping of raw data entries; and providing the at least one reportable parameter to a user.
 2. The method of claim 1, further comprising: comparing the at least one reportable parameter to a set of limits to determine whether the at least one reportable parameter is within the set of limits; and disregarding the raw data entries if the at least one reportable parameter is not within the set of limits.
 3. The method of claim 2, wherein the at least one reportable parameter comprises a yield calculated as a percentage of the grouping of raw data entries that is within the set of limits.
 4. The method of claim 3, wherein the set of limits comprises a self consistent set of limits, the self consistent set of limits calculated as a function of the actual distribution of the plurality of raw data entries.
 5. The method of claim 1, wherein the at least one reportable parameter is selected from a group consisting of: yield loss percentage, system yield loss percentage, defect density, and pareto.
 6. The method of claim 1, wherein the at least one parseable field in the name comprises a module category identifying the type of test structure.
 7. The method of claim 1, wherein the at least one parseable field in the name comprises a descriptive name for the test structure, the descriptive name distinguishing the test structure from other similar test structures.
 8. The method of claim 1, wherein the at least one parseable field in the name identifies a test performed to generate the raw data entry.
 9. The method of claim 1, wherein the at least one parseable field in the name identifies a number associated with the test structure.
 10. The method of claim 1, wherein providing the at least one reportable parameter to a user comprises presenting the at least one reportable parameter to the user on a graphical user interface screen.
 11. The method of claim 1, wherein providing the at least one reportable parameter to a user comprises generating a printed report that includes at least one selected from a group consisting of a table, chart, graph, or figure.
 12. A system for analyzing semiconductor test data, comprising: a database storing a plurality of raw data entries from a testing system, each raw data entry associated with a test structure of a semiconductor device, each raw data entry uniquely identified by a name including a plurality of parseable fields; a parser operable to: parse the plurality of data entries using a selected one of the plurality of parseable fields to identify a grouping of raw data entries; calculate at least one reportable parameter indicative of the functionality of the test structures associated with the grouping of raw data entries; and a manager operable to provide the at least one reportable parameter to a user.
 13. The system of claim 12, wherein the parser is further operable to: compare the at least one reportable parameter to a set of limits to determine whether the at least one reportable parameter is within the set of limits; and disregard the raw data entries if the at least one reportable parameter is not within the set of limits.
 14. The system of claim 13, wherein the at least one reportable parameter comprises a yield calculated as a percentage of the grouping of raw data entries that is within the set of limits.
 15. The system of claim 12, wherein the at least one reportable parameter is selected from a group consisting of: yield loss percentage, system yield loss percentage, defect density, and pareto.
 16. The system of claim 12, wherein the at least one parseable field in the name comprises a module category identifying the type of test structure.
 17. The system of claim 12, wherein the at least one parseable field in the name comprises a descriptive name for the test structure, the descriptive name distinguishing the test structure from other similar test structures.
 18. The system of claim 12, wherein providing the at least one reportable parameter to a user comprises presenting the at least one reportable parameter to the user on a graphical user interface screen.
 19. The system of claim 12, wherein providing the at least one reportable parameter to a user comprises generating a printed report that includes at least one selected from a group consisting of a table, chart, graph, or figure.
 20. Logic for analyzing semiconductor test data, the logic embodied in a computer-readable medium and operable to: receive a plurality of raw data entries from a testing system, each raw data entry associated with a test structure of a semiconductor device, each raw data entry uniquely identified by a name including a plurality of parseable fields; parse the plurality of data entries using a selected one of the plurality of parseable fields to identify a grouping of raw data entries; calculate at least one reportable parameter indicative of the functionality of the test structures associated with the grouping of raw data entries; and provide the at least one reportable parameter to a user. 